您好,欢迎来到达州工业云! 平台首页 企业驾驶舱 帮助中心 企业登录 企业注册

HI,欢迎使用达州工业云平台!

账号必须大于2位

创新资源平台
服务平台首页>专利库>专利详情

基于双向鉴别的RFID系统与方法

  • 申请号:CN201210048790.1 申请公布号: CN102682333A
  • 申请日: 2012-02-28 申请公布日: 2012-09-19
  • 申请(专利权)人: 专利代理机构: 北京同恒源知识产权代理有限公司
  • 分类号:G06K19/077

专利介绍

本发明公开了一种基于双向鉴别的RFID系统及方法,包括设置有数据单元和控制单元的RFID电子标签,数据单元包括5个独立的数据区,每一区包括多个数据项,控制单元包括5个独立的控制参数m
1.基于双向鉴别的RFID系统,其特征在于:包括RFID电子标签;所述RFID电子标签包括数据单元和控制单元;所述数据单元,用于存储数据和签名,逻辑上提供数据真实性的证明;所述控制单元,用于确定标签结构,物理上提供标签真实性的证明;所述数据单元包括动态数据区和静态数据区,所述静态数据区包括UID区和不可更改数据区,所述动态数据区中包括充值区、余额区和可更改数据区,所述UID区,用于存储标签的唯一标识号,厂家对标签的签名;所述充值区,用于存储用户充值额和存储网点对充值额的签名;所述余额区,用于存储用户余额和余额网点对余额的签名;所述可更改数据区,用于充值、余额经一次作业数据发生变化的场合;所述不可更改数据区,用于证件数据一旦被写入,不再发生变化的场合;所述UID区、充值区、余额区、可更改数据区和不可更改数据区中每一区均包括第一数据项、第二数据项、第三数据项、第四数据项和第五数据项,所述第一数据项是移存器FSR的明初值;所述第二数据项是相应数据区的加密密文;所述第三数据项是签名者的标识;所述第四数据项是签名者对该数据区的数据的签名;所述第五数据项是将控制参数加密所形成的控制参数密文;所述控制单元包括控制参数m、移存器FSR、模2加法器和组合门电路;所述控制参数m,用于确定移存器FSR的反馈抽头和进位数;所述模2加法器分别设置于移存器FSR的级和级之间;所述组合门电路,用于移存器的非线性反馈。
2.根据权利要求1所述的基于双向鉴别的RFID系统,其特征在于:所述控制参数m包括控制参数ma和控制参数mb,所述控制参数m为39bit,所述控制参数ma为31bit,所述控制参数mb为8bit,所述控制参数ma,用于控制加法器的输入线;所述控制参数mb,用于控制移存器FSR的进位数。
3.根据权利要求2所述的基于双向鉴别的RFID系统,其特征在于:所述控制参数m保留在EEPROM中,用于指示反馈关系,或用直接烧断线路的方法确定反馈关系,而不需要保留明参数m,所述控制参数ma和控制参数mb不全为“0”状态。
4.根据权利要求1所述的基于双向鉴别的RFID系统,其特征在于:所述移存器FSR为32级非线性反馈移存器,级间设有31个模2加法器;所述组合门电路,为4端组合门电路:F(x)=abd
+abd+bcd+bcd,其中,a,b,c,d端为组合门电路的输入端,其输入端分别来自移存器FSR的任意4级的输出。
5.根据权利要求1所述的基于双向鉴别的RFID系统,其特征在于:所述动态数据区还包括指纹数据区,所述指纹数据区包括第一数据项、第二数据项、第三数据项、第四数据项和第五数据项,所述第一数据项是移存器FSR的明初值;所述第二数据项是相应数据区的加密密文;所述第三数据项是签名者的标识;所述第四数据项是签名者对该数据区的数据签名;所述第五数据项是将控制参数m加密后所形成的控制参数的密文n。
6.根据权利要求6所述的基于双向鉴别的RFID系统,其特征在于:所述第五数据项的控制参数密文n是在给定密钥k下的加密文。
7.根据权利要求1-6任一项所述的基于双向鉴别的RFID方法,其特征在于:验证机作业过程的双向鉴别协议,按以下步骤进行:S1:验证机读取RFID电子标签中控制参数密文和移存器FSR的明初值,按以下公式将控制参数密文脱密:Dk(n)=m,m=ma//mb,其中,m是明控制参数,n是密控制参数,D是脱密函数,//表示mai和mbi连接而构成的数据;按ma确定反馈线路,按mb确定进位数;所述五个数据区分别具有独立的移存器FSRi和控制参数mi,其中,i=1..5;S2:验证机和RFID电子标签同时将数据区第一数据项的明初值输入到移存器FSRi中,使双方移存器取得同态;S3:双方移存器FSRi进mbi位,进入一态,在一态进行第一次鉴别:如果移存器FSRi的第0位为0,则验证机发出移存器FSRi的1-8位8bit,否则发出16-23位8bit;如果移存器FSRi的第0位为0,则RFID电子标签检查移存器FSRi的1-8位8bit,否则检查16-23位8bit,如果对则旗标置1,执行下一步;如果不对,则旗标置0,中止本次业务;S4:双方移存器FSRi进mbi位,进入二态,在二态进行第二次鉴别:如果移存器FSRi的第0位为0,则RFID电子标签输出移存器FSRi的1-8位8bit,否则输出16-23位8bit;如果移存器FSRi的第0位为0,则验证机检查移存器FSRi的1-8位8bit,否则检查16-23位8bit,如果对则旗标置1,执行下一步;如果不对,则旗标置0,则中止本次业务。
8.根据权利要求7所述的基于双向鉴别的RFID方法,其特征在于:所述数据密文脱密按以下步骤进行:验证机的移存器FSRi进mbi位,进入三态,在三态进行数据脱密和验证:读取第i的数据密文,并将数据密文与移存器FSRi的状态进行异或运算后得到脱密数据,如果密文长度大于4字节,验证机的移存器FSRi再进mbi位,为下一4字节密文提供乱数。
9.根据权利要求8所述的基于双向鉴别的RFID方法,其特征在于:还包括对各数据区的签名进行验证,具体包括以下步骤:S11:UID区验证和脱密如下:通过验证函数计算验证码:VERSIGNER(data1,s1)=c1’,如果c1=c1’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;其中,data1表示签名对象、s1表示签名码、c1表示核对码、c1’表示验证码;通过脱密函数计算:Dk1(code1)=data1,FSR1步进mb1步,为下一组的脱密做好准备;其中,D是脱密函数,k1是密钥,code1是密文,data1是明文;S12:充值数据区验证如下:通过验证函数计算验证码:VERSIGNER(data2,s2)=c2’,如果c2=c2’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;其中,data2表示签名对象、s2表示签名码、c2表示核对码、c2’表示验证码;通过脱密函数计算:Dk2(code2)=data2,FSR2步进mb2步,为下一组的脱密做好准备;其中,D是脱密函数,k2是密钥,code2是密文,data2是明文;S13:余额数据区验证如下:通过验证函数计算验证码:VERSIGNER(data3,s3)=c3’,如果c3=c3’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;其中,data3表示签名对象、s3表示签名码、c3表示核对码、c3’表示验证码;通过脱密函数计算:Dk3(code3)=data3,FSR3步进mb3步,为下一组的脱密做好准备;其中,D是脱密函数,k3是密钥,code3是密文,data3是明文;S14:可更改数据区验证如下:通过验证函数计算验证码:VERSIGNER(data4,s4)=c4’,如果c4=c4’,则旗标置1,继续执行下一步,否则旗标置0,则中止本次作业;其中,data4表示签名对象、s4表示签名码、c4表示核对码、c4’表示验证码;通过脱密函数计算:Dk4(code4)=data4,FSR4步进mb4步,为下一组的脱密做好准备;其中,D是脱密函数,k4是密钥,code4是密文,data4是明文;S15:不可更改数据区验证如下:通过验证函数计算验证码:VERSIGNER(data5,s5)=c5’,如果c5=c5’,则旗标置1,继续执行下一步,否则旗标置0,则中止本次作业;其中,data5表示签名对象、s5表示签名码、c5表示核对码、c5’表示验证码;VER是验证函数,SIGNER是公钥;通过脱密函数计算:Dk5(code5)=data5,FSR5步进mb5步,为下一组的脱密做好准备;其中,D是脱密函数,k5是密钥,code5是密文,data5是明文。
10.根据权利要求9所述的基于双向鉴别的RFID方法,其特征在于:还包括对各数据区的数据的加密、签名,具体包括以下步骤:S21:在双向鉴别结束滞后,如果是对静态数据区的操作,任务到此就结束,不再进行加密和签名操作,否则继续进行下面操作;S22:验证机将当前移存器FSRi状态通过密钥ki下加密,改变移存器FSRi的状态,得到新零态;Eki(FSRi当前状态)=新零态S23:验证机将新零态重新输入移存器FSRi中,并发给RFID电子标签,如果RFID电子标签的旗标为1,则记入初值区,做下一次移存器FSRi的初值,否则不接受新零态;验证机的FSRFi步进mbi步,进入新一态,(用于下次作业的第一次鉴别)验证机的FSRFi步进mbi步,进入新二态,(用于下次作业的第二次鉴别)验证机的FSRFi步进mbi步,进入新三态,(用于下次作业的脱密与验证)S24:验证机在新三态上分别对数据区的数据进行签名作业:对UID区数据进行签名:SIGsigner(uid)=(s1,c1);对充值区的数据进行签名:SIGsigner(data2)=(s2,c2);对余额区的数据进行签名:SIGsigner(data3)=(s3,c3);对可更改数据区的数据进行签名:SIGsigner(data4)=(s4,c4);对不可更改数据区的数据进行签名:SIGsigner(data5)=(s5,c5);其中,SIG是签名函数,signer是私钥,datai是签名对象,si是签名码,ci是核对码,;S25:将sign=(s,c)发送,如果RFID电子标签的旗标为1,则将数据存储于数据区,否则拒收;S26:验证机在三态上对数据区的数据进行加密,将当前移存器状态作4字节乱数与4字节明文数据进行异或运算后得到4字节数据密文,在新三态上,对数据区的数据进行加密作业:对UID区数据进行加密:Ek1(data1)=code1;对充值区的数据进行加密:Ek2(data2)=code2;对余额区的数据进行加密:Ek3(data3)=code3;对可更改数据区的数据进行加密:Ek4(data4)=code4;对不可更改数据区的数据进行加密:Ek5(data5)=code5;其中,E是加密函数,ki是密钥,datai是明文,codei是密文;验证机将数据密文发送到RFID,如果RFID电子标签的旗标为1,则记入数据单元各数据区的第i数据项,否则拒收;双方移存器FSRi进mb位,为下一4字节数据加密做好加密准备。技术领域
本发明涉及一种RFID鉴别认证系统和方法,特别涉及一种通过双向鉴别的RFID系统与方法。xa0
背景技术
目前,射频标签RFID(RFID,Radioxa0Frequencyxa0IDentitity)技术已应用于公交卡、电子钱包、制造、物资流通、服装、支付系统、票据和证件等的各个领域,集中地反映了各种业务的需求,其安全问题比有线以太网严重,面临安全问题,在进行安全通信之前,必须有效地解决RFID系统中读写器和电子标签之间的安全鉴别认证问题。近年来除无线射频卡(RFID),又发展出无线灵巧卡(smartxa0card)Mifare。灵巧卡除存储功能外,还有简单的计算功能,适用于公交卡、电子钱包等领域。无论是存储卡或是灵巧卡,其安全性要求是相同的,即:一是防复制性;二是防仿冒性。对于复制性,只能靠物理特性解决,逻辑方法是无能为力的;对于仿冒性,只能靠逻辑特性解决,物理方法是无能为力的。xa0为了实现双向鉴别,一般采用带CPU的RFID电子标签来实现,但带CPU的RFID电子标签还不能防止物理性复制,因为CPU的程序是固化的,固化件是容易复制的,CPU也是可以模拟的。xa0因此全世界一直在寻求一种物理和逻辑相结合的出路。初步分析表明,静态的物理器件是不能防止复制的,动态的物理器件也不一定能防止复制,就像Mifare一样。特别是在电子钱包设计的RFID电子标签,必须要防伪和防复制。RFID电子标签,最突出问题是防复制问题,复制包括信号复制和芯片复制,要防止破译机的仿真复制攻击。xa0现有的鉴别协议往往采用单向的鉴别过程,即验证机检查RFID电子标签的真伪,而RFID电子标签不能检查验证机的真伪。单向鉴别适用于完全被动的场合,但不能适应需要双向鉴别的场合。xa0因此急需一种不仅验证机能检查RFID电子标签的真伪,而且RFID电子标签也能检查验证机的真伪的双向鉴别过程的系统和方法。xa0
发明内容
有鉴于此,本发明所要解决的技术问题是提供一种不仅验证机能检查RFID电子标签的真伪,而且RFID电子标签也能检查验证机的真伪的双向鉴别过程的系统和方法。xa0本发明的目的之一是提出一种基于双向鉴别的RFID系统;本发明的目的之二是提出一种基于双向鉴别的RFID方法。xa0本发明的目的之一是通过以下技术方案来实现的:xa0本发明提供的基于双向鉴别的RFID系统,包括RFID电子标签;所述RFID电子标签包括数据单元和控制单元,xa0所述数据单元,用于存储数据和签名,逻辑上提供数据真实性的证明;xa0所述控制单元,用于确定标签结构,物理上提供标签真实性的证明;xa0所述数据单元包括动态数据区和静态数据区,所述静态数据区包括UID区和不可更改数据区,所述动态数据区中包括充值区、余额区和可更改数据区,xa0所述UID区,用于存储标签的唯一标识号,厂家对标签的签名;xa0所述充值区,用于存储用户充值额和存储网点对充值额的签名;xa0所述余额区,用于存储用户余额和余额网点对余额的签名;xa0所述可更改数据区,用于充值、余额等经一次作业数据发生变化的场合;xa0所述不可更改数据区,用于证件等数据一旦被写入,不再发生变化的场合;xa0所述UID区、充值区、余额区、可更改数据区和不可更改数据区中每一区均包括第一数据项、第二数据项、第三数据项、第四数据项和第五数据项,xa0所述第一数据项是移存器FSR的明初值;xa0所述第二数据项是相应数据区的加密密文;xa0所述第三数据项是签名者的标识;xa0所述第四数据项是签名者对该数据区的数据的签名;xa0所述第五数据项是将控制参数加密所形成的控制参数密文;xa0所述控制单元包括控制参数m、移存器FSR、模2加法器和组合门电路;xa0所述控制参数m,用于确定移存器FSR的反馈抽头和进位数;xa0所述模2加法器分别设置于移存器FSR的级和级之间;xa0所述组合门电路,用于移存器的非线性反馈。xa0进一步,所述控制参数m包括控制参数ma和控制参数mb,所述控制参数m为39bit,所述控制参数ma为31bit,所述控制参数mb为8bit,所述控制参数ma,用于控制加法器的输入线;所述控制参数mb,用于控制移存器FSR的进位数。xa0进一步,所述控制参数m保留在EEPROM中,用于指示反馈关系,或用直接烧断线路的方法确定反馈关系,而不需要保留明控制参数m,所述控制参数ma和控制参数mb不全为“0”状态。xa0进一步,所述移存器FSR为32级非线性反馈移存器,级间设有31个模2加法器;所述组合门电路,为4端组合门电路:F(x)=abd+abd+bcd+bcd,xa0其中,a,b,c,d端为组合门电路的输入端,其输入端分别来自移存器FSR的任意4级的输出。xa0进一步,所述动态数据区还包括指纹数据区,所述指纹数据区包括第一数据项、第二数据项、第三数据项、第四数据项和第五数据项,所述第一数据项是移存器FSR的明初值;所述第二数据项是相应数据区的加密密文;所述第三数据项是签名者的标识;所述第四数据项是签名者对该数据区的数据签名;所述第五数据项是将控制参数m加密后所形成的控制参数的密文n。xa0进一步,所述第五数据项的控制参数密文n是在给定密钥k下的加密文。xa0本发明的目的之二是通过以下技术方案来实现的:xa0本发明提供的基于双向鉴别的RFID方法,验证机作业过程的双向鉴别协议,按以下步骤进行:xa0S1:验证机读取RFID电子标签中控制参数密文和移存器FSR的明初值,按以下公式将控制参数密文脱密:xa0Dk(n)=m,m=ma//mb,xa0其中,m是明控制参数,n是密控制参数,D是脱密函数,//表示mai和mbi连接而构成的数据;xa0按ma确定反馈线路,按mb确定进位数;xa0五个数据区分别具有独立的移存器FSRi和控制参数mi,其中,i=1..5;xa0S2:验证机和RFID电子标签同时将数据区第一数据项的明初值输入到移存器FSRi中,使双方移存器取得同态;xa0S3:双方移存器FSRi进mbi位,进入一态,在一态进行第一次鉴别:xa0如果移存器FSRi的第0位为0,则验证机发出移存器FSRi的1-8位8bit,否则发出16-23位8bit;xa0如果移存器FSRi的第0位为0,则RFID电子标签检查移存器FSRi的1-8位8bit,否则检查16-23位8bit,如果对则旗标置1,执行下一步;如果不对,则旗标置0,中止本次业务;xa0S4:双方移存器FSRi进mbi位,进入二态,在二态进行第二次鉴别:xa0如果移存器FSRi的第0位为0,则RFID电子标签输出移存器FSRi的1-8位8bit,否则输出16-23位8bit;xa0如果移存器FSRi的第0位为0,则验证机检查移存器FSRi的1-8位8bit,否则检查16-23位8bit,如果对则旗标置1,执行下一步;如果不对,则旗标置0,则中止本次业务。xa0进一步,所述数据密文脱密按以下步骤进行:xa0验证机的移存器FSRi进mbi位,进入三态,在三态进行数据脱密和验证:xa0读取第i的数据密文,并将数据密文与移存器FSRi的状态进行异或运算后得到脱密数据,如果密文长度大于4字节,验证机的移存器FSRi再进mbi位,为下一4字节密文提供乱数。xa0进一步,还包括对各数据区的签名进行验证,具体包括以下步骤:xa0S11:UID区验证和脱密如下:xa0通过验证函数计算验证码:VERSIGNER(data1,s1)=c1’,xa0如果c1=c1’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;xa0其中,data1表示签名对象、s1表示签名码、c1表示核对码、c1’表示验证码;xa0通过脱密函数计算:Dk1(code1)=data1,FSR1步进mb1步,为下一组的脱密做好准备;xa0其中,D是脱密函数,k1是密钥,code1是密文,data1是明文;xa0S12:充值数据区验证如下:xa0通过验证函数计算验证码:VERSIGNER(data2,s2)=c2’,xa0如果c2=c2’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;xa0其中,data2表示签名对象、s2表示签名码、c2表示核对码、c2’表示验证码;xa0通过脱密函数计算:Dk2(code2)=data2,FSR2步进mb2步,为下一组的脱密做好准备;xa0其中,D是脱密函数,k2是密钥,code2是密文,data2是明文;xa0S13:余额数据区验证如下:xa0通过验证函数计算验证码:VERSIGNER(data3,s3)=c3’,xa0如果c3=c3’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;xa0其中,data3表示签名对象、s3表示签名码、c3表示核对码、c3’表示验证码;xa0通过脱密函数计算:Dk3(code3)=data3,FSR3步进mb3步,为下一组的脱密做好准备;xa0其中,D是脱密函数,k3是密钥,code3是密文,data3是明文;xa0S14:可更改数据区验证如下:xa0通过验证函数计算验证码:VERSIGNER(data4,s4)=c4’,xa0如果c4=c4’,则旗标置1,继续执行下一步,否则旗标置0,则中止本次作业;xa0其中,data4表示签名对象、s4表示签名码、c4表示核对码、c4’表示验证码;xa0通过脱密函数计算:Dk4(code4)=data4,FSR4步进mb4步,为下一组的脱密做好准备;xa0其中,D是脱密函数,k4是密钥,code4是密文,data4是明文;xa0S15:不可更改数据区验证如下:xa0通过验证函数计算验证码:VERSIGNER(data5,s5)=c5’,xa0如果c5=c5’,则旗标置1,继续执行下一步,否则旗标置0,则中止本次作业;xa0其中,data5表示签名对象、s5表示签名码、c5表示核对码、c5’表示验证码;xa0VER是验证函数,SIGNER是公钥;xa0通过脱密函数计算:Dk5(code5)=data5,FSR5步进mb5步,为下一组的脱密做好准备;xa0其中,D是脱密函数,k5是密钥,code5是密文,data5是明文。xa0进一步,还包括对各数据区的数据的加密、签名,具体包括以下步骤:xa0S21:在双向鉴别结束滞后,如果是对静态数据区的操作,任务到此就结束,不再进行加密和签名操作,否则继续进行下面操作;xa0S22:验证机将当前移存器FSRi状态通过密钥ki下加密,改变移存器FSRi的状态,得到新零态;xa0Eki(FSRi当前状态)=新零态xa0S23:验证机将新零态重新输入移存器FSRi中,并发给RFID电子标签,如果RFID电子标签的旗标为1,则记入初值区,做下一次移存器FSRi的初值,否则不接受新零态;xa0验证机的FSRFi步进mbi步,进入新一态,(用于下次作业的第一次鉴别)xa0验证机的FSRFi步进mbi步,进入新二态,(用于下次作业的第二次鉴别)xa0验证机的FSRFi步进mbi步,进入新三态,(用于下次作业的脱密与验证)xa0S24:验证机在新三态上分别对数据区的数据进行签名作业:xa0对UID区数据进行签名:SIGsigner(uid)=(s1,c1);xa0对充值区的数据进行签名:SIGsigner(data2)=(s2,c2);xa0对余额区的数据进行签名:SIGsigner(data3)=(s3,c3);xa0对可更改数据区的数据进行签名:SIGsigner(data4)=(s4,c4);xa0对不可更改数据区的数据进行签名:SIGsigner(data5)=(s5,c5);xa0其中,SIG是签名函数,signer是私钥,datai是签名对象,si是签名码,ci是核对码,;xa0S25:将sign=(s,c)发送,如果RFID电子标签的旗标为1,则将数据存储于数据区,否则拒收;xa0S26:验证机在三态上对数据区的数据进行加密,将当前移存器状态作4字节乱数与4字节明文数据进行异或运算后得到4字节数据密文,xa0在新三态上,对数据区的数据进行加密作业:xa0对UID区数据进行加密:Ek1(data1)=code1;xa0对充值区的数据进行加密:Ek2(data2)=code2;xa0对余额区的数据进行加密:Ek3(data3)=code3;xa0对可更改数据区的数据进行加密:Ek4(data4)=code4;xa0对不可更改数据区的数据进行加密:Ek5(data5)=code5;xa0其中,E是加密函数,ki是密钥,datai是明文,codei是密文;验证机将数据密文发送到RFID,如果RFID电子标签的旗标为1,则记入数据单元各数据区的第i数据项,否则拒收;双方移存器FSRi进mb位,为下一4字节数据加密做好加密准备。xa0本发明的优点在于:本发明采用在验证机和RFID电子标签之间进行双向鉴别,在不带CPU的情况下,使RFID电子标签具有鉴别和控制功能,RFID电子标签是一个存储工具,不仅能提供RFID电子标签的真实性证据,也能检查验证机的真伪。同时支持4字节乱数加密功能、8字节分组加密功能,数字签名等,不仅防止复制攻击,也能防止密码攻击,本发明可应用于电子钱包等支付系统、票据和证件等高等级的防伪防复制系统中。xa0本发明将CPK鉴别系统和读写器的验证功能紧密联系起来,共同来保护RFID电子标签的安全。在RFID电子标签的设计上,可有239=5.4×1011种不同物理结构(其中ma有231种接线关系,mb有28进位控制),几乎很难找到相同结构的电子标签,因此复制了只能复制同一个ID号的RFID电子标签。验证机和RFID电子标签之间的通信,均为明发密用,信号分析和信号复制,均没有意义。移存器的初值每一次都要变动,不提供连续序列,因此密码分析也无能为力。xa0本发明的其它优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其它优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。xa0
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:xa0图1为RFID电子标签和Reader之间的鉴别关系;xa0图2为Writer和Reader之间的鉴别关系;xa0图3为集中式鉴别网络;xa0图4为水平化鉴别网络;xa0图5为密钥的配置;xa0图6为RFID电子标签中区域的划分;xa0图7为RFID电子标签控制器结构A;xa0图8为RFID电子标签控制器结构B;xa0图9为基于双向鉴别的RFID方法流程图;xa0图10为基于双向鉴别的RFID的数据加密流程图。xa0 具体实施方式 以下将结合附图,对本发明的优选实施例进行详细的描述;应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。xa0图1为电子标签和Reader之间的鉴别关系,在写入仪(Writer)、电子标签、读卡器(Reader)三者之间,图中的电子标签表示RFID电子标签,在电子标签中设置了密码器和随机数发生器等简单的动态器件,勉强与读卡器交互鉴别。这种交互鉴别不可能是对等的,因为读卡器是有源的智能器件,而电子标签是无源的记忆器件。由此产生了不可克服的致命漏洞。最近,灵巧卡Mifare的被破解,以及仿真破译机ghost的出现就是例子。xa0图2为Writer和Reader之间的鉴别关系,在Writer、电子标签、Reader三者之间,突出Writer和Reader之间的互相鉴别,电子标签只是作为Writer的代理工具,Writer和Reader均为有源的智能器具,互相鉴别可以是对等的。由此大大提高了安全度,却大大降低xa0了对电子标签的苛刻要求。基于CPK的标识鉴别技术,能够直接应用于Writer和Reader的互相鉴别中,提供数字签名和验证,数据加密和脱密。xa0图3为集中式鉴别网络,企业发方防伪的电子标签,验证机(Reader或Writer)检查其真伪,形成验证机和电子标签之间形成集中式鉴别网络,电子标签中的数据分动态数据或静态数据。xa0图4为水平化鉴别网络,企业发方防伪的电子标签,在Writer和Writer之间,在Reader和Reader之间,在Writer和Reader之间,均发生水平化鉴别关系,电子标签中的数据分动态数据或静态数据。xa0图6为RFID电子标签中区域的划分,图7为RFID电子标签控制器结构A,图8为RFID电子标签控制器结构B,如图所示:本发明提供的基于双向鉴别的RFID系统,包括RFID电子标签;所述RFID电子标签包括数据单元和控制单元,xa0所述数据单元,用于存储数据和签名,逻辑上提供数据真实性的证明;xa0所述控制单元,用于确定标签结构,物理上提供标签真实性的证明;xa0所述数据单元包括动态数据区和静态数据区,所述静态数据区包括UID区和不可更改数据区,所述动态数据区中包括充值区、余额区和可更改数据区,xa0所述UID区,用于存储标签的唯一标识号,厂家对标签的签名;xa0所述充值区,用于存储用户充值额和存储网点对充值额的签名;xa0所述余额区,用于存储用户余额和余额网点对余额的签名;xa0所述可更改数据区,用于可更改的数据的存储,用于充值、余额等经一次作业数据发生变化的场合,如集装箱的数据;xa0所述不可更改数据区,用于不可更改的数据的存储,用于证件等数据一旦被写入,不再发生变化的场合,如证件数据;xa0所述UID区、充值区、余额区、可更改数据区和不可更改数据区中每一区均包括第一数据项、第二数据项、第三数据项、第四数据项和第五数据项,本发明提供的实施例中还包括第六数据项,xa0所述第一数据项是移存器FSR的明初值;xa0所述第二数据项是相应数据区的加密密文;xa0所述第三数据项是签名者的标识;xa0所述第四数据项是签名者对该数据区的数据签名;xa0所述第五数据项是将控制参数加密所形成的控制参数密文;xa0所述第六数据项是移存器FSR的密初值;xa0RFID电子标签中区域的划分如下表所示:xa0 xa0 xa01UID区 2充值区 xa0xa03余额区 xa04数据区1(可更改) xa05数据区2(不可更改) xa01项 xa0FSR1初值(4B) FSR2初值(4B) xa0xa0FSR3初值(4B) xa0FSR4初值(4B) xa0FSR5初值(4B) xa02项 xa0Code1=E1(UID)(4B) Code2=E2(data2)(4B) xa0xa0Code3=E3(data3)(4B) xa0Code4=E4(data4)(8B×i) xa0Code5=E5(data5)(8B×i) xa03项 xa0签名者1(8B) 签名者2(8B) xa0xa0签名者3(8B) xa0签名者4(8B) xa0签名者5(8B) xa04项 xa0签名码1(30B) 签名码2(30B) xa0xa0签名码3(30B) xa0签名码4(30B) xa0签名码5(30B) xa05项 xa0n1=Ek1(m1) n2=Ek2(m2) xa0xa0n3=Ek3(m3) xa0n4=Ek4(m4) xa0n5=Ek5(m5) xa06项 xa0EK1(FSR1)(4B) EK2(FSR2)(4B) xa0xa0EK3(FSR2)(4B) xa0EK4(FSR2)(4B) xa0EK5(FSR2)(4B)
本发明的实施例以公交卡作为例子来说明,因为公交卡等电子钱包类型,比较集中地反映了各种业务的需求。xa0图5为密钥的配置,在系统配置过程中,厂家、企业、Writer(充值网点)、Reader(每一收费站)的密钥配置,实际上是权限分配。xa0企业:持有key1,2,3,4,5,定义每一电子标签的UID和m,将电子标签中的接线关系按m熔断或记入EEPROM,然后将m加密:Eki(m)=ni,记入电子标签中,供应网点;xa0Writer:充值网点操作人员持有CPK-key,确定电子标签的充值额与余额,如充值额为100元,对充值额加密和签名,记电子标签中,再确定余额,如100元。xa0Reader:每一辆车上的售票人员持有CPK-card,如果对余额不签名,在售票元的CPK-key中不配发私钥,Reader只计算余额,记入电子标签中。xa0企业的ID-key内容如下表所示:xa0 ntent="drawing" img-format="tif" inline="no" orientation="portrait" wi="700"/> 所述控制单元包括控制参数m、移存器FSR、加法器和组合门电路;xa0所述控制参数m,用于确定标签的物理结构,即移存器的反馈关系和进位数。xa0所述模2加法器分别设置于移存器FSR之间;xa0所述组合门电路,用于非线性反馈。xa0所述控制参数m(39bit)包括控制参数ma(31bit)(和控制参数mb(8bit),所述控制参数ma,用于控制模2加法器的输入线;所述控制参数mb,用于控制移存器FSR的进位数;xa0所述控制参数m可以存放在EEPROM中控制接线的方式实现反馈关系,也可以用线路烧断的方式实现反馈关系。所述控制参数ma和控制参数mb不为全0状态。xa0所述移存器FSR为32级非线性反馈移存器,级间设有31个模2加法器;4端电路的组合函数是:xa0F(x)=abd+abd+bcd+bcd,xa0其中,a,b,c,d端为组合门电路的输入端,其输入端分别来自移存器FSR的1-32级中的任意4端输出。本发明的实施例采用移存器FSR的27到30级的输出。xa0所述动态数据区还包括指纹数据区,所述指纹数据区包括第一数据项、第二数据项、第三数据项、第四数据项和第五数据项,本发明提供的实施例还包括第六数据项,所述第一数据项是移存器FSR的明初值;所述第二数据项是相应数据区的加密密文;所述第三数据项是签名者的标识;所述第四数据项是签名者对该数据区的数据签名;所述第五数据项是将控制参数加密所形成的控制参数密文,所述第六数据项是移存器FSR的密初值;。xa0所述第五数据项的控制参数n是明控制参数m在密钥k下的加密。xa0图9为基于双向鉴别的RFID方法流程图,图10为基于双向鉴别的RFID的数据加密流程图,如图所示,基于双向鉴别的RFID方法,验证机作业过程的双向鉴别协议,按以下步骤进行:xa0S1:通过验证机(验证机是智能机,可任意模仿任何标签)读取RFID电子标签中控制参数密文和移存器FSR的明初值,按以下公式将控制参数密文脱密:xa0Dk(n)=m,m=ma//mb,xa0其中,m是明控制参数,n是密控制参数,D是脱密函数,//表示ma和mb连接而构成的数据。xa0按ma确定反馈线路,按mb确定进位数;xa0五个数据区分别具有各自独立的移存器FSRi和控制参数mi(i=1..5)xa0S2:验证机和RFID电子标签同时将数据区第一数据项的明初值输入到移存器FSRi中,使双方移存器取得同态;xa0S3:双方移存器FSRi进mbi位,进行第一次鉴别:xa0如果移存器FSRi的第0位为0,则验证机发出移存器FSRi的1-8位8bit,否则发出16xa0-23位8bit;xa0如果移存器FSRi的第0位为0,则RFID电子标签检查移存器FSRi的1-8位8bit,否则检查16-23位8bit,如果对则旗标置1,执行下一步;如果不对,则旗标置0,中止本次业务;xa0S4:双方移存器FSRi进mbi位,进行第二次鉴别:xa0如果移存器FSRi的第0位为0,则RFID电子标签输出移存器FSRi的1-8位8bit,否则输出16-23位8bit;xa0如果移存器FSRi的第0位为0,则验证机检查移存器FSRi的1-8位8bit,否则检查16-23位8bit,如果对则旗标置1,执行下一步;如果不对,则旗标置0,则中止本次业务。xa0所述数据密文脱密按以下步骤进行:xa0读取第二数据项的数据密文,并将数据密文与该数据区的明初值进行异或运算后得到数据密文的脱密数据,双方移存器FSRi进mbi位。xa0还包括对各数据区的签名验证,具体包括以下步骤:xa0S11:UID区验证如下:xa0通过公式求解该数据区的明文:VERSIGNER(data1,s1)=c1’,xa0如果c1=c1’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;xa0其中,data1表示签名对象、s1表示签名码、c1表示核对码、c1’表示验证码;xa0S12:充值数据区验证如下:xa0通过公式求解该数据区的明文:VERSIGNER(data2,s2)=c2’,xa0如果c2=c2’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;xa0其中,data2表示签名对象、s2表示签名码、c2表示核对码、c2’表示验证码;xa0S13:余额数据区验证如下:xa0通过公式求解该数据区的明文:VERSIGNER(data3,s3)=c3’,xa0如果c3=c3’,则旗标置1,继续执行下一步,否则旗标置0,中止本次作业;xa0其中,data3表示签名对象、s3表示签名码、c3表示核对码、c3’表示验证码;xa0S14:可更改数据区验证如下:xa0通过公式求解该数据区的明文:VERSIGNER(data4,s4)=c4’,xa0如果c4=c4’,则旗标置1,继续执行下一步,否则旗标置0,则中止本次作业;xa0其中,data4表示签名对象、s4表示签名码、c4表示核对码、c4’表示验证码;xa0S15:不可更改数据区验证如下:xa0通过公式求解该数据区的明文:VERSIGNER(data5,s5)=c5’,xa0如果c5=c5’,则旗标置1,继续执行下一步,否则旗标置0,则中止本次作业;xa0其中,data5表示签名对象、s5表示签名码、c5表示核对码、c5’表示验证码;xa0VER是验证函数,SIGNER是公钥。xa0还包括对各数据区的数据的加密、签名,具体包括以下步骤:xa0S21:判断移存器FSR的明初值,如果是静态数据区的数据,任务到此就结束,不进行加密和签名操作,否则继续进行下面操作;xa0S22:将当前移存器FSRi状态用ki加密产生新的状态来改变移存器FSRi状态;xa0Eki(FSRi当前状态)=新零态xa0S23:将新零态重新输入验证机的移存器FSR中,并发给RFID电子标签,如果RFID电子标签的旗标为1,则记入初值区,做下一次移存器FSR的初值,否则不接受新零态;xa0验证机的FSRi进mbi步,进入新一态(将用于下次作业的第一次鉴别);xa0验证机的FSRi进mbi步,进入新二态(将用于下次作业的第二次鉴别)xa0验证机的FSRi进mbi步,进入新三态(将用于下次作业验证与脱密)xa0S24:验证机在新三态上分别对数据区的数据进行签名和加密:xa0对UID区数据进行签名:SIGsigner(uid)=(s1,c1);xa0对充值区的数据进行签名:SIGsigner(data2)=(s2,c2);xa0对余额区的数据进行签名:SIGsigner(data3)=(s3,c3);xa0对可更改数据区的数据进行签名:SIGsigner(data4)=(s4,c4);xa0对不可更改数据区的数据进行签名:SIGsigner(data5)=(s5,c5);xa0其中,SIG是签名函数,signer是私钥;data是签名对象,s是签名码,c是核对码,c’是验证码。xa0S25:将sign=(s,c)发送,如果RFID电子标签的旗标为1,则将数据存储于数据区,否则拒收;xa0S26:验证机对数据进行加密,将第三态的状态作乱数与与名数据进行异或运算后得到数据密文,xa0对UID区数据进行加密:Ek1(data1)=code1对充值区的数据进行加密:Ek2(data2)=code2对余额区的数据进行加密:Ek3(data3)=code3对可更改数据区的数据进行加密:Ek4(data4)=code4对不可更改数据区的数据进行加密:Ek5(data5)=code5其中,E为加密函数,ki为密钥,dataii为明文,codei为密文。验证机将加密的数据密文发送,如果RFID电子标签的旗标为1,则记入数据单元各数据区的第i数据项,否则拒收。在每一次加密后,验证机中的移存器FSRi进mbi位,为下一单元的加密做好准备。xa0验证机将加密的数据密文发送,如果RFID电子标签的旗标为1,则记入数据单元各数据区的第二数据项,否则拒收。验证机的移存器FSRi进mbi位,为下一组数据的加密提供乱数。xa0以上所述仅为本发明的优选实施例,并不用于限制本发明,显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。xa0